/*
 * Copyright (c) 2024. hallele, Inc All rights reserved.
 */

package cn.hallele.ms.infrastructure.auditlog.io;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.experimental.SuperBuilder;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;

/**
 * hallele_mc_core
 *
 * @author anle5
 * @since 2024/9/14 22:42
 */
@Setter
@Getter
@SuperBuilder
@NoArgsConstructor
@AllArgsConstructor
public class Log implements Serializable {
    @Serial
    private static final long serialVersionUID = 1355669219558662009L;

    /**
     * 微服务名
     */
    private String appName;

    /**
     * 追踪日志
     */
    private String tranceId;

    /**
     * 请求设备信息
     */
    private String clientInfo;

    /**
     * 接口调用者
     */
    private Long initiator;

    /**
     * 请求开始时间
     */
    private Date startTime;

    /**
     * 请求结束时间
     */
    private Date endTime;

    /**
     * 日志记录时间
     */
    private Date logTime;

    /**
     * 请求内容
     */
    private String request;

    /**
     * 响应内容
     */
    private String response;

    /**
     * 描述码
     */
    private String msgCode;

    /**
     * 描述信息
     */
    private String msgDesc;
}
